<script src="./movies.js"></script>
<script>
  // 全局变量名movies
  let i = 0
  let k = 0
  // 1.找出时间（runTime，单位分钟）最长的电影。
  console.groupCollapsed('1.找出时间（runTime，单位分钟）最长的电影。')
  console.log(
    [...movies].sort(
      (a, b) => {
        i++
        return a.runTime - b.runTime
      }
    )[movies.length - 1],

    movies.reduce((max, movie) => {
      k++
      if (max === null) return movie
      if (+movie.runTime > +max.runTime) return movie
      return max
    }, null)
  )
  console.log(i, k)
  console.groupEnd()

  // 2. 统计所有演员演出过多少电影（例如返回：{周星驰: [], 刘德华: [] ...}
  console.groupCollapsed('2. 统计所有演员演出过多少电影')
  console.log(
    movies.reduce((r, movie) => {
      movie.actors.forEach(a => {
        if (a in r) {
          r[a].push(movie.title)
        } else {
          r[a] = [movie.title]
        }
      })
      return r
    }, {})
  )
  console.groupEnd()

  // 3. 找出制作电影最多的10个国家地区（例如返回 [{nation: '国家1', count: 10}, {nation: '国家2', count: 6}...]
  console.groupCollapsed('3. 找出制作电影最多的10个国家地区')
  console.log(
    movies.reduce((r, movie) => {
      movie.nations.forEach(n => {
        const f = r.find(item => item.nation === n)
        if (f) {
          f.count += 1
        } else {
          r.push({nation: n, count: 1})
        }
      })
      return r
    }, [])
    .sort((a, b) => b.count - a.count)
    .slice(0, 10)
  )
  console.groupEnd()

  // 4. 列表所有演员，并将统计其参演的电影平均分，并倒排序（例如返回 [{name: '演员1'， rating: 9.2}, {name: '演员2'， rating: 9.2}]）
  console.groupCollapsed('4. 列表所有演员，并将统计其参演的电影平均分，并倒排序')
  console.log(

  )
  console.groupEnd()


</script>
